1. Technical Field
The present invention relates generally to computer security and authentication of authorized users. More particularly, the present invention relates to methods for issuing, validating, and revoking hardware security devices utilized in connection with bi-directional authentication between client and server computer systems.
2. Related Art
Banking, financial services, government education, and all varieties of enterprises rely upon advanced computer systems and data communications such as the Internet to transact and share information. While these advancements have greatly increased the speed and convenience with which business is conducted, numerous vulnerabilities can potentially compromise the security of the highly sensitive and confidential data being exchanged.
In an open network environment, the primary concern of data security is three-fold. First, the server must be assured that the client is what it asserts it is. Second, the client must be assured that the server is what it asserts it is. Third, any information being exchanged between a legitimate server and a legitimate client must not be intercepted or changed by any other computer system on the network.
Various techniques are used to authenticate, or verify the identity of the client. Authentication may utilize one or more factors, which include something a user knows, something a user has, and something a user is. Most often, only a single factor is utilized because of the added cost and complexity of additional authentication factors. In such single-factor authentication systems, the most common is the use of a password to limit access. The server maintains a list of usernames and corresponding passwords. When the supplied username and password combination is determined to be correct after a comparison to the list, access to the system is permitted. The secret nature of passwords, at least in theory, prevents unauthorized users from accessing the computer system.
Simple password protection is oftentimes ineffective because the authorized users mistakenly and unwittingly reveal their passwords to an unauthorized user. Furthermore, brute-force techniques involving the entry of every combination of letters, numbers, and symbols, as well as dictionary-based techniques, may further compromise the effectiveness of such authentication systems. Because passwords must be memorized, users often choose words that are easier to remember, making it more susceptible to defeat by means of dictionary attacks. On the other hand, the more complex the passwords are required to be, the more likely that the password will be written on something easily accessible, for both the legitimate and malicious user, in the vicinity of the computer.
In addition to passwords, an additional factor may be utilized that involves something a user has. These include simple devices that are connected to the client computer through an external peripheral port, as well as sophisticated tokens that generate unique codes or one-time passwords (OTP) that are that are entered in conjunction with a username and a password as described above.
While greatly increasing security, token devices are cumbersome to manage, as each new device introduced into the system requires an extensive provisioning procedure. Currently, it is necessary to input a seed value into the management system and then associated to a user identity. Furthermore, unique identifiers associated with the tokens must be entered into the management system in order to link the same to the user. Because tokens are diminutive in size and tend to become lost easily, revocation of the old device and provisioning a new device may become a frequent occurrence. Due to processing backlogs, replacement and re-provisioning may be significantly delayed, leading to additional cost in lost productivity. Accordingly, there is a need in the art for improved security device provisioning.